﻿using System;
using System.Collections.Generic;
using System.Linq;
using Microsoft.VisualStudio.TestTools.UnitTesting;
using Triunfadores.BusinessEntities;
using Triunfadores.Repository;

namespace Triunfadores.Test
{
    [TestClass]
    public class PrestamoTest
    {
        [TestMethod]
        public void ObtenerTodosLosPrestamosTest()
        {
            PrestamoRepository target = new PrestamoRepository();
            IEnumerable<Prestamo> actual;
            actual = target.ObtenerTodosLosPrestamos();
            Assert.IsTrue(actual.Count() >= 1);
        }

        [TestMethod]
        public void ObtenerPrestamoPorDniClienteTest()
        {
            PrestamoRepository target = new PrestamoRepository();
            var dni = "12345678";
            IEnumerable<Prestamo> actual;
            actual = target.FindSearchingFromPrestamoByDniCliente(dni);
            //Assert.IsTrue(actual.Id == 1);
            Assert.IsTrue(actual.Count() >= 1);
            //Assert.IsNotNull(actual);
        }

        [TestMethod]
        public void AddPrestamoTest()
        {
            PrestamoRepository prestamoRepository = new PrestamoRepository();
            var ListEsperado = (IEnumerable<Prestamo>) prestamoRepository.ObtenerTodosLosPrestamos();

            Prestamo prestamo = new Prestamo()
            {
                FechRegistro = DateTime.Parse("01/11/2015"),
                NroCuotas = 2,
                Monto = decimal.Parse("55000"),
                PeriodoPago = "Mensual",
                TasaInteres = decimal.Parse("0.25"),
                Total = decimal.Parse("55500"),
                IdAvalador = 1,
                IdCliente = 1
            };
            prestamoRepository.AddPrestamo(prestamo);
            var ListaCTUAL = (IEnumerable<Prestamo>)prestamoRepository.ObtenerTodosLosPrestamos();
            Assert.AreEqual(ListEsperado.Count() + 1, ListaCTUAL.Count(), "Error ");
        }

    }
}
